Score Test

AI
gemma-4-31b
작성자
익명
작성일
2026.08.14
조회수
1
버전
v1

Score Test (점수 검정)

1. 개요

Score Test(점수 검정)는 통계적 가설 검정 방법의 하나로, 가능도 함수(Likelihood function)의 기울기인 스코어 함수(Score function)를 이용하여 모수(Parameter)의 특정 값에 대한 귀무가설을 검정하는 방법입니다. 이 검정법은 라그랑주 승수 검정(Lagrange Multiplier Test, LM Test)이라고도 불립니다. Score Test의 가장 큰 특징은 최대 가능도 추정치(MLE)를 직접 계산하지 않고도, 귀무가설 하에서의 가능도 함수의 곡률과 기울기만을 이용하여 가설의 유의성을 판단할 수 있다는 점입니다.

2. 가설 설정

Score Test를 수행하기 위해서는 먼저 검정하고자 하는 모수 $\theta$에 대해 다음과 같이 가설을 설정합니다.

  • 귀무가설 ($H_0$): $\theta = \theta_0$ (모수가 특정 값 $\theta_0$와 같다.)
  • 대립가설 ($H_1$): $\theta \neq \theta_0$ (모수가 특정 값 $\theta_0$와 다르다.)

여기서 $\theta_0$는 일반적으로 분석가가 설정한 기준값이나, 제약 조건이 있는 모델의 파라미터 값을 의미합니다.

3. 수학적 원리 및 도출

3.1 스코어 함수 (Score Function)

가능도 함수 $L(\theta)$에 로그를 취한 로그 가능도 함수(Log-likelihood function)를 $\ell(\theta) = \log L(\theta)$라고 할 때, 이를 $\theta$에 대해 미분한 함수를 스코어 함수 $U(\theta)$라고 정의합니다.

$$U(\theta) = \frac{\partial}{\partial \theta} \ell(\theta)$$

스코어 함수는 가능도 함수의 기울기를 나타내며, 최대 가능도 추정치(MLE) $\hat{\theta}$에서는 $U(\hat{\theta}) = 0$이 됩니다.

3.2 피셔 정보 (Fisher Information)

피셔 정보 $I(\theta)$는 로그 가능도 함수의 곡률(Curvature)을 측정하는 값으로, 스코어 함수의 분산과 같습니다.

  1. 단일 관측치에 대한 정보량: $$I(\theta) = E\left[ \left( \frac{\partial \log f(X;\theta)}{\partial \theta} \right)^2 \right] = -E\left[ \frac{\partial^2 \log f(X;\theta)}{\partial \theta^2} \right]$$
  2. 전체 표본 $n$개에 대한 정보량 (Total Information): $$\mathcal{I}(\theta) = n I(\theta) = -E\left[ \frac{\partial^2 \ell(\theta)}{\partial \theta^2} \right]$$
  3. 관측 피셔 정보 (Observed Fisher Information): 실제 데이터에서 기댓값 대신 2차 미분값 자체를 사용하는 관측 정보량은 다음과 같이 계산됩니다. $$\mathcal{J}(\theta) = -\frac{\partial^2 \ell(\theta)}{\partial \theta^2}$$

3.3 검정 통계량의 도출

Score Test의 핵심은 귀무가설 $\theta = \theta_0$가 참일 때, $U(\theta_0)$가 0에 얼마나 가까운지를 측정하는 것입니다.

단일 모수의 경우: 검정 통계량 $S$는 다음과 같이 정의됩니다. $$S = \frac{U(\theta_0)^2}{\mathcal{I}(\theta_0)}$$

다변수 모수 벡터 $\boldsymbol{\theta}$의 경우: 모수가 여러 개인 경우, 스코어 함수는 그라디언트 벡터가 되고 피셔 정보는 헤세 행렬의 기댓값인 정보 행렬(Information Matrix)이 됩니다. 이때 통계량 $S$는 다음과 같은 이차 형식(Quadratic form)으로 일반화됩니다. $$S = U(\theta_0)^T \mathcal{I}(\theta_0)^{-1} U(\theta_0)$$

4. 점근적 성질 및 분포

표본 크기 $n$이 충분히 클 때, 중심극한정리에 의해 스코어 함수 $U(\theta_0)$는 정규분포를 따르게 됩니다. 이에 따라 Score Test 통계량 $S$는 점근적으로 카이제곱 분포(Asymptotic $\chi^2$ distribution)를 따릅니다.

$$S \xrightarrow{d} \chi^2(df)$$

여기서 $df$는 검정하는 파라미터의 수(자유도)입니다. 만약 단일 파라미터를 검정한다면 $df=1$이 되며, 계산된 $S$ 값이 임계치보다 크면 귀무가설을 기각합니다.

5. 다른 가능도 기반 검정과의 비교

Score Test는 가능도비 검정(LRT) 및 왈드 검정(Wald Test)과 함께 '삼위일체(Trinity)' 검정법으로 불립니다.

비교 항목 Score Test (점수 검정) Wald Test (왈드 검정) Likelihood Ratio Test (LRT)
계산 방식 $U(\theta_0)^T \mathcal{I}(\theta_0)^{-1} U(\theta_0)$ $(\hat{\theta} - \theta_0)^T \text{Var}(\hat{\theta})^{-1} (\hat{\theta} - \theta_0)$ $2(\ell(\hat{\theta}) - \ell(\theta_0))$
필요 추정치 $\theta_0$ (귀무가설 값)만 필요 $\hat{\theta}$ (MLE) 필요 $\theta_0$와 $\hat{\theta}$ 모두 필요
계산 비용 매우 낮음 (가장 효율적) 중간 높음 (두 모델 모두 추정)
수렴 특성 $\theta_0$ 근처에서 정확함 $\hat{\theta}$ 근처에서 정확함 전반적으로 가장 안정적
장점 MLE 계산 없이 검정 가능 계산이 직관적임 가장 강력한 검정력 보유

유한 표본에서의 수렴 특성 및 편향

세 검정법은 표본 크기가 무한대로 갈 때 동일한 값으로 수렴하지만, 표본이 적은 경우 다음과 같은 특성을 보입니다. * LRT: 일반적으로 점근적 분포에 가장 빠르게 도달하며, 유한 표본에서도 가장 안정적인 성능을 보입니다. * Score Test: 귀무가설 $\theta_0$가 참일 가능성이 높을 때 매우 효율적이며, $\theta_0$ 근처에서 빠르게 수렴하는 경향이 있습니다. * Wald Test: MLE $\hat{\theta}$의 추정치와 그 분산 추정치에 전적으로 의존합니다. 따라서 표본 크기가 작아 $\hat{\theta}$의 편향(Bias)이 크거나 분산 추정이 불안정할 경우, 신뢰도가 가장 낮고 수렴 속도가 느립니다.

6. Score Test의 특징 및 장점

  1. 계산적 효율성: 가장 큰 장점은 최대 가능도 추정치(MLE)를 구할 필요가 없다는 점입니다. 복잡한 비선형 모델에서 MLE를 찾는 과정은 반복적인 수치 최적화(Numerical Optimization)를 필요로 하며 시간이 많이 걸리지만, Score Test는 $\theta_0$에서의 미분값만 계산하면 됩니다.
  2. 사전 스크리닝: 수많은 변수 중 유의미한 변수를 찾기 위해 여러 번의 검정을 수행해야 할 때, 모든 변수에 대해 MLE를 구하는 대신 Score Test로 빠르게 후보를 추려낼 수 있습니다.
  3. 점근적 동등성: 표본 크기가 충분히 크다면 LRT, Wald Test와 통계적으로 동일한 결론에 도달하며, 특히 귀무가설이 참인 영역에서 매우 강력한 효율성을 가집니다.

7. 주요 활용 사례

  • 모델 선택 (Model Selection): 새로운 파라미터를 모델에 추가했을 때, 모델의 적합도가 유의미하게 개선되는지 확인하는 '라그랑주 승수 검정(LM Test)'으로 사용됩니다.
  • 로지스틱 회귀 (Logistic Regression): 특정 독립 변수가 종속 변수에 유의미한 영향을 미치는지 검정할 때, 전체 모델을 다시 추정하지 않고 해당 변수의 계수가 0이라는 귀무가설 하에서 Score Test를 수행하여 빠르게 유의성을 판단합니다.
  • 경제학 및 계량경제학: 대규모 데이터셋에서 구조적 변화(Structural Break) 지점을 찾거나, 특정 제약 조건이 타당한지 검정할 때 사용합니다.
  • 생물 통계학: 생존 분석(Survival Analysis)에서 공변량(Covariate)의 유의성을 빠르게 검정하는 데 활용됩니다.

8. 구현 예제

8.1 시나리오

정규분포 $N(\mu, \sigma^2)$에서 $\sigma^2$이 알려져 있을 때, 평균 $\mu$에 대한 귀무가설 $H_0: \mu = \mu_0$를 검정하는 과정을 살펴봅니다.

  1. 로그 가능도 함수: $\ell(\mu) = -\frac{n}{2}\log(2\pi\sigma^2) - \frac{1}{2\sigma^2}\sum(x_i - \mu)^2$
  2. 스코어 함수: $U(\mu) = \frac{\partial \ell}{\partial \mu} = \frac{1}{\sigma^2}\sum(x_i - \mu)$
  3. 피셔 정보: $\mathcal{I}(\mu) = -E[\frac{\partial^2 \ell}{\partial \mu^2}] = -E[-\frac{n}{\sigma^2}] = \frac{n}{\sigma^2}$
  4. 통계량: $S = \frac{U(\mu_0)^2}{\mathcal{I}(\mu_0)} = \frac{(\frac{1}{\sigma^2}\sum(x_i - \mu_0))^2}{n/\sigma^2} = \frac{(\sum(x_i - \mu_0))^2}{n\sigma^2}$

8.2 Python 구현 코드

import numpy as np
from scipy import stats

def score_test_mean(data, mu_0, sigma):
    """
    정규분포 평균에 대한 Score Test 수행
    """
    n = len(data)
    
    # 1. Score function U(mu_0) 계산: 로그 가능도 함수의 1차 미분값
    score = np.sum(data - mu_0) / (sigma**2)
    
    # 2. Fisher Information I(mu_0) 계산: 로그 가능도 함수의 2차 미분값의 기댓값
    fisher_info = n / (sigma**2)
    
    # 3. Score Statistic S 계산: S = U^2 / I
    s_stat = (score**2) / fisher_info
    
    # 4. p-value 계산 (자유도 1인 카이제곱 분포)
    p_value = 1 - stats.chi2.cdf(s_stat, df=1)
    
    return s_stat, p_value

# 데이터 생성 및 검정
np.random.seed(42)
sample_data = np.random.normal(loc=5.5, scale=1.0, size=100) # 실제 평균 5.5
mu_null = 5.0 # 귀무가설: 평균은 5.0이다
sigma_known = 1.0

s_stat, p_val = score_test_mean(sample_data, mu_null, sigma_known)

print(f"Score Statistic: {s_stat:.4f}")
print(f"P-value: {p_val:.4f}")

if p_val < 0.05:
    print("결과: 귀무가설을 기각합니다. (유의미한 차이 있음)")
else:
    print("결과: 귀무가설을 기각하지 못합니다.")

AI 생성 콘텐츠 안내

이 문서는 AI 모델(gemma-4-31b)에 의해 생성된 콘텐츠입니다.

주의사항: AI가 생성한 내용은 부정확하거나 편향된 정보를 포함할 수 있습니다. 중요한 결정을 내리기 전에 반드시 신뢰할 수 있는 출처를 통해 정보를 확인하시기 바랍니다.

이 AI 생성 콘텐츠가 도움이 되었나요?